"""
@File    ：runtest.py
@Author  ：sarah
@Date    ：2023-07-21
@Desc    ：测试用例执行的入口
"""

import os
import pytest
import subprocess

from allure_des.allure_des import set_report_env_on_results, \
    set_report_executer_on_results, \
    set_report_categories_on_results
from config.config import cm
from utils.timer import sleep

# 保持原有配置
TEST_DIR = "tests"
RESULTS_DIR = "allure-results"
REPORT_DIR = "allure-report"

# 使用你指定的路径
ALLURE_PATH = r"D:\allure\allure-2.34.0\allure-2.34.0\bin\allure.bat"
ALLURE_TEMPLATE_DIR = r"E:\pythonProject\allure-plugins\custom-logo\static\styles.css"

def run():
    pytest.main([
        '--allure-stories=登录成功,登录失败',
        '--alluredir=%s' % cm.dir_report_json,
        'testcases/'
    ])
    set_report_categories_on_results()
    set_report_env_on_results()
    set_report_executer_on_results()
    sleep(3)

    # 生成 Allure 报告，无需指定 --template-dir 参数
    subprocess.run([
        ALLURE_PATH,
        "generate",
        cm.dir_report_json,
        "-o",
        cm.dir_report_html,
        "--clean"
    ], check=True)

if __name__ == '__main__':
    run()